<%-- 
    Document   : createTrainingplan
    Created on : 14.02.2011, 14:30:55
    Author     : felix
--%>

<%
    // Encoding setzen
    request.setCharacterEncoding("UTF-8");

    // Testen ob Parameter hidden übergeben wurde
    if(request.getParameterMap().containsKey("hidden")){
        // Alle Übungen für einen Trainingsplan und Session laden
        String[][] baskets = db.baskets.getAllBasketsBySessionIdOrdered(session.getId());

        // Wenn Parameter name und date nicht leer sind und mehr als ein Element in baskets vorhanden ist
        if(!request.getParameter("name").equals("") && !request.getParameter("date").equals("") && baskets.length > 0)
        {
            // Trainingsplan anlegen
            db.trainingplans.createTrainingsplan(request.getParameter("name").toString(), request.getParameter("date").toString(), session.getAttribute("typeofsport").toString());

            // Alle Übungen für den Trainingsplan laden
            String[][] selectedExercises = db.baskets.getAllBasketsBySessionIdOrdered(session.getId());

            // Trainingsplan- und Übungsverknüpfungen anlegen
            db.trainingplanexercises.createTrainingsplanexercises(selectedExercises, null);

            // Beliebtheit der gespeicherten Übungen um 1 erhöhen
            db.exercises.increasePopularity(selectedExercises);

            // Alle gespeicherten Übungen anhand der Session aus der temporären Tabelle löschen
            db.baskets.clearBasketBySessionId(session.getId());

            // Erfolgsmeldung setzen
            session.setAttribute("flash", "Trainingsplan gespeichert");
            session.setAttribute("flash_color", "green");

            // Zur Übersichtsseite umleiten
            getServletContext().getRequestDispatcher("/viewAllTrainingplans.jsp").forward(request, response);
        } else {
            if(request.getParameter("name").equals("")){
                // Fehlermeldung setzen
                session.setAttribute("flash", "Bezeichnung fehlerhaft");
                session.setAttribute("flash_color", "red");
            } else if(request.getParameter("date").equals("")){
                // Fehlermeldung setzen
                session.setAttribute("flash", "Datum fehlerhaft");
                session.setAttribute("flash_color", "red");
            } else if(!(baskets.length > 0)){
                // Fehlermeldung setzen
                session.setAttribute("flash", "Keine Übungen ausgewählt");
                session.setAttribute("flash_color", "red");
            } else {
                // Fehlermeldung setzen
                session.setAttribute("flash", "Trainingsplan wurde nicht gespeichert");
                session.setAttribute("flash_color", "red");
            }
        }
    }
%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ include file="header.jsp" %>
<%@ page import="java.util.*" %>

<div id="contents">
    <h1>Trainingsplan erstellen</h1>
    <form action="createTrainingplan.jsp" method="post">
        <fieldset>
            <legend>Trainingsplan</legend>
            <input type="hidden" name="hidden" value="1"/>
            <br/>
            <label>Bezeichnung*</label>
            <br/>
            <input name="name" type="text" maglength="200" value="<%if(request.getParameter("name") != null) out.print(request.getParameter("name"));%>"  />

            <br/><br/>

            <label>Datum*</label>
            <br/>
            <input type="hidden" id="DPC_TODAY_TEXT" value="Heute">
            <input type="hidden" id="DPC_BUTTON_TITLE" value="Öffne Kalender...">
            <input type="hidden" id="DPC_MONTH_NAMES" value="['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember']">
            <input type="hidden" id="DPC_DAY_NAMES" value="['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa']">
            <input type="text" name="date" maxlength="10" id="date" datepicker_format="YYYY-MM-DD" datepicker="true" value="<%if(request.getParameter("date") != null) out.print(request.getParameter("date"));%>" readonly/>

            <br/><br/>

            <label>Übungen*</label>
            <br/>
            
            <!-- Übungsauswahl einbinden-->
            <%@ include file="exerciseSelection.jsp" %>

            <br/><br/>
            * Pflichtfeld
            <br/><br/>
            <input type="submit" value="Trainingsplan speichern"/>

        </fieldset>
    </form>
</div>
<%@ include file="footer.jsp" %>
